/ Assembly List / LJCDBDataAccess / DbDataAccess / Retrieve

Namespace - LJCDBDataAccess


Parameters
dbRequest - The request object.

Returns

The result XML message.

Syntax

C#
private DbResult Retrieve(DbRequest dbRequest = null)

Retrieves the data row values. (E)

Remarks

This method is called from the Execute() method if the DbRequest.RequestType is "Select".

Example

C#
// Retrieves a Person object.
private static Person Retrieve(DbDataAccess dbDataAccess
    , DbColumns dataDefinition)
{
    Person retValue = null;

    // Create the list of included columns.
    // This list should include the database assigned columns.
    List<string> columnList = new List<string>();
    foreach (DbColumn column in dataDefinition)
    {
        columnList.Add(column.ColumnName);
    }

    // Create a Data Columns object with the included data definitions
    // and values from the data record.
    var dataColumns = DbCommon.QueryColumns(columnList, dataDefinition);

    // Create Key Columns.
    var keyColumns = new DbColumns()
    {
        { "Name", (object)"TestName" }
    };
    dataDefinition.LJCSetExcludeKeyValue("PrincipleFlag");

    var queryKeyColumns = DbCommon.QueryKeys(keyColumns, dataDefinition);

    // Create a query with the retrieve columns.
    // The retrieved columns should include the DB assigned columns.
    DbRequest dbRequest = new DbRequest()
    {
        Columns = dataColumns,
        KeyColumns = queryKeyColumns
        QueryType = QueryType.Select.ToString(),
        TableName = "PersonTest",
    };
    DbResult dbResult = dbDataAccess.Execute(dbRequest);

    if (dbResult != null)
    {
        string sqlStatement = dbResult.ExecutedSql;
        if (dbResult.DbRecords != null && dbResult.DbRecords.Count > 0)
        {
            retValue = new Person();
            DbCommon.SetObjectValues(dbResult.DbRecords[0], retValue);
        }
    }
    return retValue;
}

Copyright © Lester J. Clark and Contributors.
Licensed under the MIT License.